#include <iostream>
#include <stack>
#include <vector>
#include <string>
using namespace std;

class Solution
{
public:
    int evalRPN(vector<string> &tokens)
    {
        stack<int> number;
        for (string c : tokens)
        {
            if (c == "+")
            {
                int n1 = number.top();
                number.pop();
                int n2 = number.top();
                number.pop();
                number.push(n2 + n1);
            }
            else if (c == "-")
            {
                int n1 = number.top();
                number.pop();
                int n2 = number.top();
                number.pop();
                number.push(n2 - n1);
            }
            else if (c == "*")
            {
                int n1 = number.top();
                number.pop();
                int n2 = number.top();
                number.pop();
                number.push(n2 * n1);
            }
            else if (c == "/")
            {
                int n1 = number.top();
                number.pop();
                int n2 = number.top();
                number.pop();
                number.push(n2 / n1);
            }
            else
            {
                number.push(stoi(c));
            }
        }
        return number.top();
    }
};

int main()
{
    cout << "Code150" << endl;
    Solution s;
    vector<string> tokens = {"4","3","-"};
    cout << s.evalRPN(tokens) << endl;
    return 0;
}